English Virtuose

Meta description:

Blast the target with ice in order to deal ice stasis points.

  • Tags:

    IceComplex action
  • Name:

    aIceStasisBlast

  • Displayed name:

    Ice stasis blast

  • Description:

    Blast the target with ice in order to deal ice stasis points.

  • Cast description:

    | AP: vAP.string * | CD: vCD.strings | | :---: | :---: | | **Flux: vFluxOrCost.string ➞ vFluxCost.string** | **Range: vRange.string** | On a **vTest.string** test **MR vMR.string** [1d20]: You inflict vISPDice.string [vISPDice.stringd6] ISP to the targets. *The target can react to this action with their Resist to negate the effects.*

  • Condition:

    assert(character.sFlux.current >= vFluxCost.value, [[You don't have enough Flux]])
  • AP cost:

    3

  • Cooldown:

    0

  • Flux cost:

    apMod(vAP)*cdMod(vCD)*targetMod(1,0)*vRange*effect(vISPDice*50,90,character.sCatalystLvl)
  • Variables:

    vRange = ListVariable([[vRange]], [[Range]], {[[shortMod]]}, {[[5m]]})
    vISPDice = NumberVariable([[vISPDice]], [[ISP]], [[1]], [[20]], [[1]])
    vISPDice.valueDisplay.value = [[self ..
    "d6"]]
    vTest = ListVariable([[vTest]], [[Test]], {[[character.sArcana]]}, {[[Arcana]]})
    vMR = StatVariable([[vMR]], [[vTest]])
  • On used script:

    character.sFlux:changeCurrent(-vFluxCost.value)
    
  • On post script:

    if (success) then
        action.currentCD.value = vCD.value
    end
    
  • Type:

    1

  • Action effects:

    • Use case:

      number(vIceStasisAmount.value>0)*3

    • Name:

      Ice Statis points

    • Description:

      You will inflict vIceStasisAmount.string ISP to the target.

    • Script:

      stat = character:createStat([[sISP]], [[temporary]])
      stat.displayName:set([[Ice stasis points]])
      stat:changeCurrent({{vIceStasisAmount.value}})
      
      effect = character:createEffect([[mIceStasisPoints]])
      effect.displayName:set([[Ice stasis points]])
      effect.description:set([[]])
      effect.duration:set(10)
      effect.script:set([=[]=])
      
      effect.recurrentScript:set([==[if (character.sHP.current <= character.sISP.current) then
          character.mIceStasisPoints:delete()
      
          effect2 = character:createEffect([[mIceStasis]])
          effect2.displayName:set([[Ice stasis]])
          effect2.description:set([[]])
          effect2.duration:set(5)
      
          effect2.script:set([=[character.sRegenAP:addCurrent([[-100%]], [[physical]], [[Ice stasis]])]=])
      
          effect2:activate()
      end]==])
      
      effect:activate()
      effect.undoScript:add([[character.sISP:changeCurrent(-character.sISP.current)]])
    • Variables:

      vIceStasisAmount = NumberVariable([[vIceStasisAmount]], [[ISP]], [[0]])